Все секреты и тайны Selenium 2.0
Этот тренинг устарел. Вместо него запущен новый: Selenium WebDriver: полное руководство
За прошедшие несколько лет инструмент автоматизации тестов для веб-приложений Selenium приобрел фантастическую популярность.
Владение этим инструментом стало одним из обязательных умений для тестировщика-автоматизатора, достаточно посмотреть описания вакансий, чтобы убедиться в этом.
Разумеется, это не могло не сказаться на индустрии обучения – тренинги по Selenium имеются в арсенале каждого учебного центра.
Мы тоже не являемся исключением:
- для тех, кто только начинает путь в автотестирование и пока не умеет программировать, у нас есть курс Selenium 2.0: стартовый уровень
- в тренинге “Программирование для тестировщиков” больше половины упражнений связаны с использованием Selenium,
- для тех, кто уже умеет программировать и хочет быстро освоить основы Selenium и сопутствующей инфраструктуры для запуска тестов, мы предлагаем тренинги “Разработка тестов на Selenium 2.0 + Java” и “Разработка тестов на Selenium 2.0 + Python”.
Однако, все известные нам на текущий момент тренинги и учебные курсы ориентированы на специалистов, только начинающих знакомство с Selenium.
Что делать тем, кто уже три раза слышал, “как создать тесты на Selenium с нуля”, знает, что такое PageObject и умеет запускать тесты не только из среды разработки, но и из консоли?
Мы предлагаем совершенно уникальный тренинг – про Selenium 2.0 как он есть, со всеми его достоинствами и недостатками!
- тренинг полностью посвящен WebDriver, aka Selenium 2.0, потому что за ним будущее, никаких реминисценций в адрес Selenium RC и тем более в адрес Selenium IDE не будет!
- минимум лирических отступлений на тему “что лучше – TestNG или JUnit” или “автоматизация в контексте Agile”,
- только правда про Selenium, вся правда, и ничего кроме правды!
Более актуальной и полной информации вы не найдёте нигде – ни в официальной документации, ни в книгах, ни на других тренингах!
Почему мы уверены в этом?
Потому что автор и ведущий тренинга –- Алексей Баранцев:
- является участником команды разработки Selenium,
- знает инструмент не только снаружи, но и изнутри,
- участвует в ряде коммерческих проектов, где занимается автоматизацией тестов при помощи Selenium,
- автор и ведущий уже упомянутых ранее тренингов “Программирование для тестировщиков”, “Разработка тестов на Selenium 2.0 + Java”, “Разработка тестов на Selenium 2.0 + Python”, Selenium 2.0: стартовый уровень,
- а также целого ряда тренингов, покрывающих самые разные области тестирования –- тест-дизайн, тестирование производительности, тестирование защищенности.
Вы получите ответы даже на самые каверзные вопросы, касающиеся Selenium!
"А что делать, если я только начинаю заниматься автоматизацией? Будет ли мне полезен этот тренинг?"
Нет. Лучше для начала выбрать какой-нибудь из вышеперечисленных более простых учебных курсов.
Вот подробная программа тренинга:
1. “Галопом по Европе”
Источники информации о Selenium
Установка минимального необходимого для разработки и выполнения тестов ПО: Java, среда разработки, браузеры, selenium-server-standalone
Запуск браузера на локальной машине
Открытие страниц приложения
Базовые средства поиска элементов: findElement
Базовые действия: click, sendKeys
Базовые способы получения свойств элементов: getText, getAttribute
2. Всё про запуск браузеров: Firefox, Chrome, Opera, Safari, Internet Explorer, PhantomJS, HtmlUnit
Локальный запуск браузеров
Удаленный запуск браузеров с использованием Selenium Server
Особенности запуска браузеров на Windows и на Linux
Кастомизация профиля Firefox: подключение плагинов, настройка автоматического сохранения файлов и т.д.
Работа с cookies
Настройка работы браузеров через прокси-сервер
Запуск нескольких браузеров одновременно
Автоматический периодический перезапуск браузера
Ожидание загрузки страниц
Вспомогательный класс BrowserFactory
3. Всё про поиск элементов и ожидания
Имплицитные (неявные) ожидания при поиске элементов
Стратегии поиска: id, name, class, xpath, css
Получение списка элементов: findElements
Поиск “по цепочке” (chained)
Использование executeScript для поиска
Эксплицитные (явные) ожидания
Тонкая настройка ожиданий: таймаут, частота проверок и другие параметры
Вспомогательный класс WaitWebElement
Дополнительные предопределенные условия: ajaxComplete, atLeastOneElementPresent и др.
4. Всё про работу с элементами
Получение текста: getText
Видимые и невидимые элементы
Получение атрибутов: getAttribute
Получение CSS-свойств: getCssValue
Действия мыши с элементами разного типа: click
Действия клавиатуры с элементами разного типа: sendKeys
“Высокоточное оружие”: Actions – наведение мыши, клики “со сдвигом”, клик правой кнопкой, drag-n-drop
5. Всё про окна, фреймы и алёрты
Получение списка окон
Переключение в нужное окно
Открытие нового окна
Получение списка фреймов
Переключение в нужный фрейм
Ручная обработка алёртов
Автоматическая обработка алёртов
6. Вспомогательные средства
Журналирование действий
Снятие скриншотов
BrowserMob Proxy
Selenium Grid
Сервер непрерывной интеграции (Jenkins)